<?php
namespace app\common\model;

use think\Model;
use think\Session;

class Article extends Model
{
    // 表名和主键
    protected $table = "os_article";
    protected $pk = "id";

    // 自动完成
    protected $insert = ['create_time'];

    // 字段信息
    protected $field = [
        "id",             // 主键
        "cid",            // 分类id
        "title",          // 标题
        "introduction",   // 简介
        "content",        // 内容
        "author",         // 作者
        "status",         // 状态 0 待审核  1 审核
        "reading",        // 阅读量
        "thumb",          // 缩略图
        "photo",          // 图集
        "is_top",         // 是否置顶  0 不置顶  1 置顶
        "is_recommend",   // 是否推荐  0 不推荐  1 推荐
        "sort",           // 排序
        "create_time",    // 创建时间
        "publish_time"    // 发布时间
    ];

    /**
     * 文章作者
     * @param $value
     * @return mixed
     */
    protected function setAuthorAttr($value)
    {
        return $value ? $value : Session::get('admin_name');
    }

    /**
     * 反转义HTML实体标签
     * @param $value
     * @return string
     */
    protected function setContentAttr($value)
    {
        return htmlspecialchars_decode($value);
    }

    /**
     * 序列化photo图集
     * @param $value
     * @return string
     */
    protected function setPhotoAttr($value)
    {
        return serialize($value);
    }

    /**
     * 反序列化photo图集
     * @param $value
     * @return mixed
     */
    protected function getPhotoAttr($value)
    {
        return unserialize($value);
    }

    /**
     * 创建时间
     * @return bool|string
     */
    protected function setCreateTimeAttr()
    {
        return date('Y-m-d H:i:s');
    }
}